// import com.alibaba.druid.sql.ast.SQLExpr;
// import com.alibaba.druid.sql.ast.SQLHint;
// import com.alibaba.druid.sql.ast.SQLObjectImpl;
// import com.alibaba.druid.sql.visitor.SQLASTVisitor;
#pragma once
#include "../SQLObjectImpl.h"
#include "../SQLHint.h"
#include "../../../utils/common_ptr.h"

class SQLExprHint :  public SQLObjectImpl  , virtual  public SQLHint
{
public:
  SQLExpr_ptr expr;

  SQLExprHint();

  SQLExprHint(SQLExpr_ptr expr);
  SHAREDOBJECT(SQLExprHint);

  SQLExpr_ptr getExpr();

  void setExpr(SQLExpr_ptr expr);

  // @Override
  void accept0(SQLASTVisitor_ptr visitor);

  SQLObject_ptr clone();
};
